package littlepicture.data.dao;

import java.util.List;

import littlepicture.data.model.WorkRecord;
import littlepicture.data.template.EmployeeDailyWork;
import littlepicture.data.template.EmployeeDate;

public interface RecordDao {
	/***
	 * Add a new work record
	 * 
	 * @param wr
	 * @return recordId
	 */
	public Integer addRecord(WorkRecord wr);
	
	/**
	 * Delete a work record by recordId
	 * 
	 * @param workRecordId
	 */
	public void deleteRecord(long workRecordId);
	
	/**
	 * Update work record
	 * 
	 * @param wr
	 */
	public void updateRecord(WorkRecord wr);
	
	/**
	 * Get work record
	 * 
	 * @param workRecordId
	 * @return
	 */
	public WorkRecord getWorkRecordById(long workRecordId);
	
	/**
	 * Retrieve employee's daily work records
	 * 
	 * @param employeeDate
	 * @return
	 */
	public List<EmployeeDailyWork> getEmployeeDailyWork(EmployeeDate employeeDate);
	
}
